﻿using System.Collections.Generic;
using Dqaqs.Repositories;
using Dqaqs.Services;

namespace Dqaqs
{
	/// <summary>
	/// Contains neccessery repositories and services needed for a Dqaqs
	/// </summary>
	public class DqaqsContext
	{
		private DataSourceRepository _dataSources;
		private Schema _globalSchema;
		private DqProfileRepository _dqProfileRepository;
		private IEnumerable<IDqProfilingService> _dqServices;
		internal DataSourceRepository DataSources { get { return _dataSources; } }
		public Schema GlobalSchema { get { return _globalSchema; } }
		internal DqProfileRepository DqProfiles { get { return _dqProfileRepository; } }
		/// <summary>
		/// Gets the list of dq services, used for profiling
		/// </summary>
		public IEnumerable<IDqProfilingService> DqServices { get { return _dqServices; } }
	}
}
